/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Merlion.MRP.bean;

import Merlion.MRP.entity.BackOrderEntity;
import Merlion.MRP.entity.PlannedDailyDemandEntity;
import Merlion.MRP.entity.ReservationEntity;
import javax.ejb.Remote;

@Remote
public interface ProductionManagementBeanRemote {

    public Long createProductBatch(String plannedDailyDemandId, String remarks);

    void withdrawProductBatch(Long batchId, String remarks);

    public BackOrderEntity createBackOrder(Long salesDocId);

    public void withdrawBackOrder(Long backOrderId);

    //public ReservationEntity createReservation(BackOrderEntity bo, PlannedDailyDemandEntity pdd, int quantity);

    public void withdrawReservation(java.lang.Long id);
    
    public void initializeMaterialBatches();
    
    public void initializeProductBatches();

    public void confirmBackOrder(java.lang.Long backOrderId);

    public java.util.List<Merlion.util.state.ReservationState> viewReservationsOnSalesDocument(java.lang.Long salesDocId);

    public java.util.List<Merlion.util.state.PlannedDemandState> viewTodayProductionPlan();

    public boolean executeTodayProductionPlan();
}
